package rjgc.mall.mapper;

import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import rjgc.mall.entity.Goods;
import rjgc.mall.entity.ShoppingCart;

import java.util.List;

@Mapper
public interface ShoppingCartMapper {

    //加入购物车
    int insertToDatabase(ShoppingCart shoppingCart);

    //更新对象
    int updateToDatabase(ShoppingCart shoppingCart);

    //是否已经存在用户对应商品
    List<ShoppingCart> userAndgoodExistOrNot(Integer goodid, Integer userid);

    //从购物车中移除
    int removeById(@Param("id") Integer id);

    //展示用户对应商品
    List<ShoppingCart> showShoppingCartByUserid(Integer userid);

    //全选购物车商品
    int selectAll(Integer userid);
    //全不选购物车商品
    int notSelectAll(Integer userid);
    //返回购物车商品selected状态
    int showSelectStatus(Integer id);
    //将单个商品select状态改为1
    int changeSelectedToOne(Integer id);
    //将单个商品select状态改为0
    int changeSelectedToZero(Integer id);

    //返回用户selected状态为1的商品
    List<ShoppingCart> selectWhereSelectedEqualsOne(Integer userid);

    //设置购买数
    int setBuyNum(Integer id ,Integer userid,Integer num);
}
